# 导入numpy库用于数学运算，导入PIL库用于图像处理
import numpy as np
from PIL import Image

# 第1步：加载图片-注：确保'blackimage.jpeg'文件与此脚本在同一目录下。
image = Image.open('resources/blackimage.jpeg').convert('RGB')

# 第2步：将图片大小调整为920 x 1150
image = image.resize((920, 1150))

# 第3步：将图片转换为numpy数组，并保存到文本文件中
rgb_matrix_path = 'resources/rgb_matrix.txt'
rgb_matrix = np.array(image)
np.savetxt(rgb_matrix_path, rgb_matrix.reshape(-1, 3), fmt='%d')

# 第4步：从文本文件读取RGB矩阵，并重建图片
loaded_matrix = np.loadtxt(rgb_matrix_path, dtype=int)
restored_image = loaded_matrix.reshape((1150, 920, 3))
restored_image_pil = Image.fromarray(np.uint8(restored_image))
restored_image_pil.save('resources/restored_image2.jpeg')
